package Dao.Process;

import Entity.Process.Medium;

import java.sql.Connection;

public interface MediumDao {


    /**
     * 通过学号来查询中期检查
     *
     * @param SNO 学号
     * @return 查询到的 Medium 对象
     */
    Medium getMediumBySNO(String SNO, Connection conn);


    /**
     * 向中期检查表 插入一条数据
     *
     * @param medium 要插入的对象
     * @return 操作影响的行数
     */
    Integer insertMedium(Medium medium, Connection conn);


    /**
     * 修改中期检测的审核状态
     *
     * @param SNO     学号
     * @param result  结果
     * @param opinion 审核意见
     * @return 操作影响的行数
     */
    Integer updateCheckBySNO(String SNO, String result, String opinion, String state, Connection conn);


    /**
     * 根据指导老师的编号获取任务书完成的人数
     *
     * @param tno  指导老师编号
     * @param type 1是查询所有人数 2是查询完成的人数
     * @return 任务书完成的人数
     */
    Integer getSumByTNO(String tno, Integer type, Connection conn);


    /**
     * 查询是否有学生的记录
     *
     * @param sno 学号
     * @return 学生的记录条数
     */
    Integer getSumBySNO(String sno, Connection conn);


    /**
     * 通过学号更新数据
     *
     * @param medium 要更新的数据
     * @return 操作影响的行数
     */
    Integer updateBySNO(Medium medium, Connection conn);
}
